37 research outputs found
Adjunctions for exceptions
An algebraic method is used to study the semantics of exceptions in computer
languages. The exceptions form a computational effect, in the sense that there
is an apparent mismatch between the syntax of exceptions and their intended
semantics. We solve this apparent contradiction by efining a logic for
exceptions with a proof system which is close to their syntax and where their
intended semantics can be seen as a model. This requires a robust framework for
logics and their morphisms, which is provided by categorical tools relying on
adjunctions, fractions and limit sketches.Comment: In this Version 2, minor improvements are made to Version
Multiple-Precision Correctly Rounded Gauss-Legendre Quadrature
Numerical integration is an operation that is frequently available in multiple precision numerical software packages. The different quadrature schemes used are considered well studied but the roundoff errors that result from the computation are often neglected, and the actual accuracy of the results are therefore seldom rigorously proven. We focus on the Gauss-Legendre quadrature scheme and describe the algorithms needed in our implementation. A thorough error analysis is given as well as experimental error measurements and timings
A duality between exceptions and states
In this short note we study the semantics of two basic computational effects,
exceptions and states, from a new point of view. In the handling of exceptions
we dissociate the control from the elementary operation which recovers from the
exception. In this way it becomes apparent that there is a duality, in the
categorical sense, between exceptions and states
States and exceptions considered as dual effects
In this paper we consider the two major computational effects of states and
exceptions, from the point of view of diagrammatic logics. We get a surprising
result: there exists a symmetry between these two effects, based on the
well-known categorical duality between products and coproducts. More precisely,
the lookup and update operations for states are respectively dual to the throw
and catch operations for exceptions. This symmetry is deeply hidden in the
programming languages; in order to unveil it, we start from the monoidal
equational logic and we add progressively the logical features which are
necessary for dealing with either effect. This approach gives rise to a new
point of view on states and exceptions, which bypasses the problems due to the
non-algebraicity of handling exceptions
Decorated proofs for computational effects: Exceptions
We define a proof system for exceptions which is close to the syntax for
exceptions, in the sense that the exceptions do not appear explicitly in the
type of any expression. This proof system is sound with respect to the intended
denotational semantics of exceptions. With this inference system we prove
several properties of exceptions.Comment: 11 page
Correctly Rounded Newton-Cotes Quadrature
Numerical integration is an important operation for scientific computations. Although the different quadrature methods have been well studied from a mathematical point of view, the analysis of the actual error when performing the quadrature on a computer is often neglected. This step is however required for certified arithmetics. We study the Newton-Cotes quadrature scheme and give enough details on the algorithms and the error bounds to enable software developers to write a correctly-rounded Newton-Cotes quadrature
Compressed Modular Matrix Multiplication
We propose to store several integers modulo a small prime into a single
machine word. Modular addition is performed by addition and possibly
subtraction of a word containing several times the modulo. Modular
Multiplication is not directly accessible but modular dot product can be
performed by an integer multiplication by the reverse integer. Modular
multiplication by a word containing a single residue is a also possible.
Therefore matrix multiplication can be performed on such a compressed storage.
We here give bounds on the sizes of primes and matrices for which such a
compression is possible. We also explicit the details of the required
compressed arithmetic routines.Comment: Published in: MICA'2008 : Milestones in Computer Algebra, Tobago :
Trinit\'e-et-Tobago (2008
Decorated proofs for computational effects: States
The syntax of an imperative language does not mention explicitly the state,
while its denotational semantics has to mention it. In this paper we show that
the equational proofs about an imperative language may hide the state, in the
same way as the syntax does.Comment: In Proceedings ACCAT 2012, arXiv:1208.430
MPFR: A Multiple-Precision Binary Floating-Point Library With Correct Rounding
This paper presents a multiple-precision binary floating-point library, written in the ISO C language, and based on the GNU MP library. Its particularity is to extend ideas from the IEEE-754 standard to arbitrary precision, by providing correct rounding and exceptions. We demonstrate how these strong semantics are achieved | with no signicant slowdown with respect to other tools | and discuss a few applications where such a library can be useful
Computational Complexity of Iterated Maps on the Interval (Extended Abstract)
The exact computation of orbits of discrete dynamical systems on the interval
is considered. Therefore, a multiple-precision floating point approach based on
error analysis is chosen and a general algorithm is presented. The correctness
of the algorithm is shown and the computational complexity is analyzed. As a
main result, the computational complexity measure considered here is related to
the Ljapunow exponent of the dynamical system under consideration